Modify the Cobra.API.Exe.Config File
Modify the Cobra.api.exe.config file on the Cobra client workstation to use netTcpBinding.
To edit the Cobra.api.exe.config file, complete the following steps:
- Navigate to the Cobra installation folder.
- Locate the Cobra.api.exe.config file and open it using a text editor (such as Notepad).
-
Change the configuration file settings to conform to the protocol required by the Cobra application server.
- Change the address protocol value for each endpoint from http to net.tcp.
- Change the binding value for each endpoint from customBinding to netTcpBinding.
- Change the binding configuration value for each endpoint from compressedBinaryBinding to WindowsClientOverTcp.
- Uncomment the identity tag on both endpoints. If the tag does not exist, insert it as shown below.
- Uncomment the netTcpBinding section.
-
Change the
netTcpBinding security mode from
Message to
Transport or from
Transport to
Message.
Transport level authentication provides faster performance than Message level authentication.
Before <client>
<endpoint name="PersistenceService" address="http://<COBRA SERVER NAME>:9009/PersistenceService" binding="customBinding" bindingConfiguration="compressedBinaryBinding" contract="IdeaBlade.Persistence.Wcf.IWcfPersistenceService">
<!-- <identity><servicePrincipalName value="Local Network"></servicePrincipalName></identity>-->
</endpoint>
<!-- One endpoint per data source extension -->
<endpoint name="PersistenceServer" address="http://<COBRA SERVER NAME>:9009/PersistenceServer" binding="customBinding" bindingConfiguration="compressedBinaryBinding" contract="IdeaBlade.Persistence.Wcf.IWcfPersistenceServer">
<!-- <identity><servicePrincipalName value="Local Network"></servicePrincipalName></identity>-->
</endpoint>
</client>
<!-- <netTcpBinding>
<binding name="WindowsClientOverTcp"
closeTimeout="10:01:00"
openTimeout="10:01:00"
receiveTimeout="10:10:00"
sendTimeout="10:01:00"
transactionFlow="false"
transferMode="Buffered"
transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard"
listenBacklog="10"
maxBufferPoolSize="2147483647"
maxBufferSize="2147483647"
maxConnections="10"
maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
<reliableSession ordered="true"
inactivityTimeout="10:10:00"
enabled="false" />
<security mode="Message">
<transport clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>-->
After <client>
<endpoint name="PersistenceService" address="net.tcp://<COBRA SERVER NAME>:9009/PersistenceService" binding="netTcpBinding" bindingConfiguration="WindowsClientOverTcp" contract="IdeaBlade.Persistence.Wcf.IWcfPersistenceService">
<identity><servicePrincipalName value="Local Network"></servicePrincipalName></identity>
</endpoint>
<!-- One endpoint per data source extension -->
<endpoint name="PersistenceServer" address="net.tcp://<COBRA SERVER NAME>:9009/PersistenceServer" binding="netTcpBinding" bindingConfiguration="WindowsClientOverTcp" contract="IdeaBlade.Persistence.Wcf.IWcfPersistenceServer">
<identity><servicePrincipalName value="Local Network"></servicePrincipalName></identity>
</endpoint>
</client>
<netTcpBinding>
<binding name="WindowsClientOverTcp"
closeTimeout="10:01:00"
openTimeout="10:01:00"
receiveTimeout="10:10:00"
sendTimeout="10:01:00"
transactionFlow="false"
transferMode="Buffered"
transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard"
listenBacklog="10"
maxBufferPoolSize="2147483647"
maxBufferSize="2147483647"
maxConnections="10"
maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
<reliableSession ordered="true"
inactivityTimeout="10:10:00"
enabled="false" />
<security mode="Transport">
<transport clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
-
If the client installation runs on Windows XP, verify that
maxconnection is set to
8. Uncomment the
system.net tag on both endpoints.
Before <!-- <system.net>
<connectionManagement>
<add address="*" maxconnection="8" />
</connectionManagement>
</system.net>-->
After <system.net>
<connectionManagement>
<add address="*" maxconnection="8" />
</connectionManagement>
</system.net>
Note: You must perform this procedure on each client workstation that connects to the Cobra application server.